home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 25
/
Aminet 25 (1998)(GTI - Schatztruhe)[!][Jun 1998].iso
/
Aminet
/
mus
/
midi
/
CAMD_Toolkit.lha
/
SoftSynth
/
SoftSynth.doc
< prev
next >
Wrap
Text File
|
1998-04-18
|
7KB
|
242 lines
--------------------------------------
SoftSynth - the future of GMPlay
--------------------------------------
>>> very early release: WORK IN PROGRESS! <<<
This type of program is called a "software synthesizer". It eats up your
CPU power in order to produce MIDI music.
The CAMD interface makes this program a very versatile utility. Use it for
listening to MIDI files (with PlayMF). Use it as a cheap MIDI expander.
Or use it to play the notes from Deluxe Music II or any other CAMD
compatible MIDI sequencer.
Requirements
------------
* currently OS 2.0 or better.
* a working GMPlay 1.3 installation
* installed camd.library (available on Aminet)
* any MIDI software using CAMD (e.g. Deluxe Music II, playmf)
or an external MIDI interface for feeding MIDI notes.
* perferrably a fast CPU (030 or better recommended)
The future of GMPlay?
---------------------
This program is a "child" of GMPlay. All of you who expected an
extraordinary and feature-loaded GMPlay 1.4 release might be very
disappointed now.
But let me tell you: This program and future GMPlay releases will be
developed in parallel (the synthesizer engine is directly taken from
GMPlay).
This program offers a better opportunity for testing and evolving the
GMPlay synthesizer engine. All of the enhancements made to the engine will
quickly become a part of GMPlay.
Installation
------------
IMPORTANT: THIS PROGRAM REQUIRES A WORKING GMPLAY 1.3 INSTALLATION.
Place the updated 14bit.driver in your GM:SoundDrivers and/or
DEVS:SoundDrivers directory. I may (or may not?) fix some replay problems
with Piasso96 or Cybergfx boards.
If you are using Picasso96, set the environment variable
ENV:Picasso96/AmigaVideo
to "31kHz". This will enable sampling rates up to 56kHz for 14 bit replay.
General Program Usage
---------------------
In the current state of development, this program is CLI-ONLY !
After starting the program, you will see a window showing piano keyboards
for all 16 MIDI channels. This looks rather cheaply and was a very quick
hack. Expect this to change soon.
The numbers to the right of the piano keyboards indicate the currently
active programs (=instruments) for each channel. Future SoftSynth versions
will show the instrument names.
The program will use GMPlay's 14bit.driver for audio output. There is no
other driver available yet.
The program tries to provide a pseudo-realtime response to MIDI signals.
This means that SoftSynth must use an extremely small audio mix buffer.
The drawback of this method is that the CPU is easily "overloaded" which
results in an interrupted audio stream.
CLI Usage
---------
The template for the shell command line is as follows
LINK/K,TONES/K,DRUMS/K,VOL=VOLUME/K/N,FREQ=FREQUENCY/K/N
TICKS/K/N,POLY=POLYPHONY/K/N,PRI=PRIORITY/K/N,MONO/S
Description
* LINK/K (Keyword)
The MIDI cluster to hook into. Default is "out.0".
"in.0" would allow you to use your Amiga as a MIDI expander.
* TICKS/K/N
The number of ticks indirectly defines the size of the audio mix buffer.
In order to achieve a realtime MIDI response, the mix buffer must be very
small. A tick value of 1 means that SoftSynth will mix one second of audio
before reacting to MIDI input. The default value is 50. So SoftSynth will
react to MIDI events every 1/50 second (=20 msec). The maximum value is
100 ticks per second resulting in 10msec response time.
All the other options are compatible to GMPlay 1.3. Please refer to the
GMPlay 1.3 documentation.
Some options (tone and drum filter etc) are still missing. The ENV:GMOPTS
option file is not used by this program.
The only difference is in the VOLUME option. The maximum value is 1000
(instead of 500 for GMPlay). However when using values between 500 and
1000, you might get an overmodulated (distorted) audio signal.
General Tips
------------
Set the priority to 21 (PRI option). So Intuition will not interrupt the
program when moving windows, scrolling text etc.
If your CPU is too slow, increase the PRIORITY, reduce the FREQUENCY,
enable MONO mode, reduce the number of TICKS or play MIDI files with less
notes ;-)
If a different instrument (MIDI program) is selected, SoftSynth first has
to load this instrument. If this happens within a MIDI file, the audio
stream will be interrupted. The same applies for drums.
When playing one MIDI file for the second time, the instruments and drums
are already loaded.
Better decompress all of GMPlay's instruments for faster loading.
XPack GM:Tones/#? ALL
XPack GM:Drums/#? ALL
XPack is a part of the XPK user archive available from the internet URL
http://www.amigaworld.com/support/xpk/ or from every Aminet mirror.
Limitations and Problems
------------------------
- Directly based on the GMPlay 1.3 synthesizer engine. All limitations
that apply to GMPlay 1.3 also apply here.
- this program has a very crude GUI.
- loading new instruments or drums will interrupt the audio stream.
- there is no AHI support yet.
Bugs
----
- nothing serious known yet.
History
-------
Release 8: (of the CAMD_Toolkit package)
initial release of SoftSynth.
Future
------
* improve the GUI
* make this program a Commodity
* add an option to flush unused instruments/drums
* add an option to preload all instruments/drums (only for
people with lots of RAM)
* adapt PlayMF to pre-select all MIDI instruments and drums
before playing the MIDI file (only if SoftSynth is running).
So SoftSynth can load all samples right _before_ playing.
* improve the synthesizer engine (all TODO options from the
GMPlay 1.3 documentation also apply here)
See Also
--------
"playmf". A Standard MIDI file player using the CAMD library. Originally
provided as an example by Commodore. Now overhauled, bugfixed and improved
by me.
PianoMeter - an experimental graphical note visualisation utility using
BOOPSI classes. Try it! It is a real eyecandy ;-) Based on the "vu"
example in the CAMD developer package.
"Fireworks" from this distribution - a thrilling MIDI fireworks tool.
Makes your music explode. Amazingly fast with Picasso 96.
GMPlay 1.3 - available on Aminet. Uses your CPU to play MIDI music. Does
not require any MIDI synthesizer, but lots of CPU power and RAM.
Contact
-------
for comments, bug reports and suggestions:
The author: Christian Buchner
flowerp@eikon.e-technik.tu-muenchen.de
Greetings
---------
Alessandro de Luca - for beginning the GMPlay project and passing me the
source code. Thanks, man!